/*
 Copyright (C) 2008  Maurizio Monticelli

 This program is free software; you can redistribute it and/or modify it under the terms of the 
 GNU General Public License as published by the Free Software Foundation; either version 2 of the 
 License, or (at your option) any later version.

 This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without 
 even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General 
 Public License for more details.

 You should have received a copy of the GNU General Public License along with this program; if not, write 
 to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110, USA 
*/

package ch.justdoit.andriodrpncalc.view.buttons;


import ch.justdoit.andriodrpncalc.model.Model;
import ch.justdoit.R;
import android.content.Context;
import android.graphics.drawable.Drawable;
import android.view.View;

public class ButtonExpression extends BaseImageButton implements ISecondFunctionButton {

	  protected boolean toggle = false;
	
	public ButtonExpression(Context context, Model _model) {
		super(context, _model);
		setImageResource(R.drawable.expression_normal);
		model.mView.notifyFirstButtons();
		
		setOnClickListener(onClickListener);
	}

	

	private OnClickListener onClickListener = new OnClickListener()
    {
        public void onClick(View v)
        {
        	if (command == 0) {
	        	if (!toggle) {
	        		model.mSettings.setExpressionMode(true);
	        		toggle = !toggle;
	        	} else {
	        		model.mSettings.setExpressionMode(false);
	        		toggle = !toggle;
	        	}
	    		if (toggle) {
	    			setImageResource(R.drawable.expression_toggle);
	    		} else {
	    			setImageResource(R.drawable.expression_normal);
	    		}
        	}
        	
        	if (command == 1) {
        		model.mView.notifyAlphaButtons();
        	}
        }
    };
	private int command;

	@Override
	public void onFirstFunction() {
		command = 0;
		if (toggle) {
			setImageResource(R.drawable.expression_toggle);
		} else {
			setImageResource(R.drawable.expression_normal);
		}
		
	}



	@Override
	public void onSecondFunction() {
		command = 1;
		if (toggle) {
			setImageResource(R.drawable.expression2_toggle);
		} else {
			setImageResource(R.drawable.expression2_normal);
		}
		
	}
}
